home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
PC World Interactive 7
/
PC World Interactive 7.iso
/
program
/
vbkontrol.exe
/
VBDLL15D.ZIP
/
RELNOTES.TX_
/
RELNOTES.TX
Wrap
Text File
|
1995-03-09
|
6KB
|
123 lines
Release Notes for VB/DLL. The Visual Basic library builder.
1.5 - Existing library programs will have to be re-built before they will
work with this version. Future versions of the product will be
backwardly compatible to libraries built with this version.
1) Multiple functions can now be exported from a single instance of
the control. Functions declarations are no longer defined using the
VB properties window. The Edit Declarations dialog in the Library
Manager program is now set up to do this. It's executed by either
clicking the right mouse button on a control or by clicking the '...' box
on the Edit Declarations property. The ShowCode property has been
eliminated. This can now be done using the "Show Code" button in the
Library Manager program. Because of this change, an additional
string parameter indicating the function name executed must now be
passed to the Call_Proc event procedure. See item 2 in the 1.25
section for instructions on updating your CallProc event procedures to
accept the new parameter. The total size of all the function
declarations for a control instance cannot exceed 64K.
2) The FireUnloadEvent property and the UnloadLibrary event no
longer exist. Instead, library programs can now export a function
called "UnloadVbLib" that will be called when all the callers unload.
This allows libraries to be unloaded by any program. The function
must be defined as accepting one integer parameter. This parameter
indicates whether or not the library program was started by the VBX
control. It will be either 0 or -1. If False, then it may have been
started directly by a user and probably shouldn't be shut down.
Because of the missing FireUnloadEvent property, forms with
VBDLLCTL controls that were built with a previous version will
generate errors when they're loaded. These can be ignored. Also, any
code for a VBDLLCTL control that was in the UnloadLibrary event
will now be in a general procedure for the form the control was in.
This is because the event no longer exists. Usually, this code will be
moved to the "UnloadVbLib" function and these procedures deleted.
3) VB/DLL functions can now accept VB variant data types. For now,
variant parameters must be declared As Variant in the Edit
Declarations Dialog and cannot simply omit a type declaration
character as is done in VB to indicate a variant type variable. This will
be remedied in the complete, non-demo 1.5 version.
4) Two new stub functions for CopyParmsToVB and
CopyParmsFromVB provide "variable number of parameters" support
in the same fashion as VBFunction. They're called VCopyParmsToVB
and VCopyParmsFromVB. The ShowCode window now generates the
VB Declares for these as well as the VBFunction function. See the
on-line help for how to use.
5) The VBFunction function now displays VB/DLL errors in standard
VB run time error message boxes instead of creating a "Bad DLL
Calling Convention" error.
6) Right button mouse support has been added for design-time
instances of the control. Clicking the right button on a control
instance will activate the Edit Declarations Dialog.
1.25
1) The VB parameter type String * Length is now supported for
library functions, indicating that a buffer of a specific length will be
passed. This is mainly for C/Pascal callers.
2) The UnloadLibrary event now gets a parameter that indicates
whether or not the library program was started by the VBX control. If
it wasn't, then it may have been started directly by a user and probably
shouldn't be shut down. If a library program using a previous version
of VB/DLL has code in this event, the code will have to be cut out,
the function deleted and the code pasted back in. This will make the
new parameter appear.
3) A bug has been fixed that causes a General Protection Fault when
calling library functions that return a non-string value declared with a
type phrase in the Declaration property instead of a type character (e.g
ShowForm () As Integer instead of ShowForm% ().)
4) A new DLL function called VBFunction is exported from the VBX.
Its purpose is to call VB/DLL library functions just like
VBFunctionCall. The difference is that VBFunction can accept the
function parameters on the stack eliminating the need for Type...End
Type structures in the caller program. When things go wrong though,
(like the function is not found) the caller will generally get a "Bad
DLL Calling Convention" error instead of the normal codes passed
back from VBFunctionCall. Look at the samples to see how this new
function is used.
1.2
1) The ShowCode application is now called the Library Manager and
has the capability to display loaded library programs and functions.
2) DLL files CLIENT.DLL and VBDLL.DLL, as well as the
SpyWorks/VB files SBC.VBX and DWSPYDLL.DLL are no longer
required. VBRUN300.DLL is still needed to run the Library Manager
application but it doesn't need to be re-distributed. As a result the
Library Builder takes up only about 30K of RAM when loaded. The
files for re-distribution are now VBDLLCTL.VBX and
DLLCTRL.EXE.
3) Parameter space for library function return values is no longer
automatically allocated. Space for the function return value must now
be allocated by the caller and passed as parameter 3 to
VBFunctionCall. If no return value is desired, a 0 (NULL pointer)
can be passed. This is a preliminary step to supporting user defined
data types.
1.0
1) If the called library function yields processing to Windows, the
VBFunctionCall function may time-out and return with an error.
Yielding to Windows occurs when the library function executes a
DoEvents statement, stops at a breakpoint, shows a modal form, or
calls one of the Windows API functions that yield like GetMessage,
PeekMessage, WaitMessage etc.
2) VB/DLL libraries do not support ByVal parameter passing.
3) The library application's title as entered in the Make Exe dialog
should match the EXE name the caller passes into the
VBFunctionCall function. This ensures that the library manager can
locate a library that is loaded. in the Visual Basic environment.